The present invention concerns a control system for a d.c. motor of the type comprising a rotor and a stator, a coil assembly and a magnetic circuit, the one integral with the rotor and the other with the stator, the rotor being driven in rotation by an electric current passing through the coils. This motor is powered by a control system comprising:
a position detector co-operating with the rotor;
a power supply circuit to apply to the terminals of the coils a supply voltage to generate the electric current, and
a control circuit.
Such a system is described in U.S. Pat. No. 5,705,907, which refers more specifically to a drive control system for servo motor.
By this system, a moving part, actuated by the motor and the movement of which is measured by the detector, in this case a potentiometer, can thus reach a target position Pc defined by an electrical resistance. For this purpose, the motor is, initially, powered continuously. When the part actuated approaches the target set, defined by a potentiometer resistance value, the signal applied to the motor is chopped, so as to reduce the speed and ensure more precise positioning of the object actuated. To ensure optimum positioning, the chopping rate is reduced gradually, as the object approaches the target. Thus, by adjusting the chopping rate, it is possible to adjust the positioning precision. When the target position is reached, the power supply is interrupted, so that the rotor stops. The target position is thus more or less precise, depending on the chopping rate and the energy to be supplied by the motor and the characteristics of the drive line driven by the motor.
In a variant, and to allow for the energy dissipated, the chopping rate is gradually increased, until the detector informs the control circuit that the friction torque has been overcome and that the motor is effectively running.
Such a solution allows relatively precise positioning. However, no provision has been made to allow for elastic effects in the drive line inserted between the rotor and the moving part.
Another system is described in U.S. Pat. No. 5,847,527. It relates to control of the position of a head with reference to a disc, e.g. a magnetic disc of the type designed for storing information.
By this system, the head, which performs reading and writing, is brought into work position in three phases, the so-called acceleration, deceleration and stabilization phases. By this system, the position of the head is defined digitally and not by analogue means, as in the document mentioned earlier. Position control is performed by means of two control circuits, one of which is active during the acceleration and deceleration phases, called a xe2x80x9cbang-bang control meansxe2x80x9d working on an ON/OFF basis, while the other, called a xe2x80x9cdead beat control meansxe2x80x9d, is active during the positioning phase, and taking into account the information stored during a learning phase. The latter control system implies the use of high-performance and relatively costly IT systems.
In these systems, the position of the moving part actuated by the motor is monitored while the part is in movement. This implies that there be powerful computing resources or that the precision aimed at is low. Measurement stops as soon as the power supply is interrupted. The object of the present invention is to allow the implementation of a system requiring inexpensive resources, which ensures high positioning precision. This system is applicable even if the elasticity of the assembly inserted between the rotor and the moving part is great and variable, which could cause the rotor to recoil several steps backward after the power supply has been interrupted.
This recoil means that, even if the rotor has gone through an angle corresponding to the number of steps dc, necessary to reach target position Pc, that position has not actually been reached. This recoil must therefore be taken into account. The object of the present invention is to propose a system ensuring a high precision of positioning of the part, even in the event of recoil, for a cost as low as possible.
This object is achieved thanks to the fact that, during a so-called positioning phase, the control circuit, after observing that target position Pc has been reached, interrupts the current and applies to the coils a braking pulse of reverse polarity, short-circuits the coils until stoppage observed by the detector, and then verifies that the stoppage position corresponds to the target position Pc. In the event of a negative response, start a new cycle again by applying, via the power supply circuit, a voltage across the coil terminals, interrupted by the control circuit in the same conditions as those defined above.
In other words, during this positioning phase, the rotor stops for a brief moment, enabling the assembly formed of the rotor and the moving part to find an equilibrium position. After this, the position of the moving part is checked. If target position Pc has not been reached, a new positioning cycle is initiated. In this way, the computing resources to be employed during rotor movement are limited and the precision aimed at is very high, even with operating conditions which may vary sharply.
Advantageously, the control circuit performs the following operations during this positioning phase:
determination of the number of steps to be executed to reach target position Pc;
determination of the number of steps executed by applying a positioning pulse delivering a known energy;
determination of the drive and braking energy values to be supplied by a positioning pulse and a braking pulse respectively to reach target position Pc; and
control of the power supply circuit so that it may apply to the motor the determined positioning and braking pulses.
By combining the application of a calibrated positioning pulse, then a braking pulse, it is possible to make optimum allowance for fluctuations in the torque dissipated by the rotor and the moving part, and ensure optimum approach.
This approach can be further improved by determining the energy values of the positioning and braking pulses on the basis of the tests performed previously, and in particular by selecting, from a set of alternative solutions recorded in memory, that offering the greatest probability of success.
The operations performed during the positioning phase can be repeated, with selection of the positioning and braking pulses being modified depending on the result obtained, until target position Pc is reached.
It is obvious that the system as described indeed allows precise positioning, but at low speed. Once the number of steps to be executed exceeds a few dozen, it is recommended to apply a procedure enabling work at higher speed, although without losing the required precision. That is why, during a so-called approach phase, the control circuit performs the following operations, after the detector has given the information that the part is motionless:
determination of the position of the moving part, relative to target position Pc;
application of a pulse of known energy;
short-circuiting of the coils until stoppage of the part;
determination the new position of the part;
calculation of the number of steps executed by the part due to the pulse applied;
calculation of the energy to be supplied to enable the part to reach target position Pc;
application of a pulse whose energy is smaller thanxe2x80x94or equal toxe2x80x94that calculated;
short-circuiting of the coils until the part is immobilized; and
if the detector indicates passage through the target position, application of the positioning phase procedure, otherwise resumption of the approach phase procedure.
The positioning phase and the approach phase take place iteratively, with a movement followed by a stoppage during which the effect of the pulses applied is analyzed. In this way, the calculations are performed when the rotor is stopped, thus enabling a reduction in computing power of the control circuit, which is generally implemented by means of a microcontroller.
When the moving part has to cover a distance corresponding to several hundred, or even several thousand steps, it must be possible to have the motor run continuously. Accordingly, prior to the approach phase and to the extent that the number of steps to be executed to reach the target position is greater than a limiting value di, the control circuit gives the order to the power supply circuit to power the rotor with d.c. current, at a calibrated voltage U1, and counts the number of steps executed based on the information collected by the detector.
To stop the d.c. power supply to the rotor, after the detector has determined that its speed is constant, the control circuit calculates, from the speed reached, the number of steps that could be executed by the part before stopping when the power supply is interrupted and the coils are short-circuited, and then interrupts the power supply and short-circuits the coils when the number of steps remaining to be executed reaches a value equal to the calculated number, possibly increased by a safety factor.
Moreover, when the number of steps to be executed is very great, greater than a limiting value do, the control circuit gives the order to the power supply circuit to power the motor at a maximum voltage U0, greater than U1 and which may be the voltage of the energy source, and merely counts the number of steps executed, then, when the number of steps remaining to be executed is equal to a limiting value defined as a function of d0, the control circuit brings the supply voltage to a value equal to U1.